package com.fowo.api.flow.enums.flow;

/**
 * @fileName: HandleTypeEnums
 * @Description: 代码目的，作用，如何工作
 * @Author: pzh
 * @Date: 2023/4/10 0010 13:39
 */
public enum HandleTypeEnums {

    /**
     * 同意
     **/
    AGREE(0, "同意"),

    /**
     * 拒绝
     **/
    REFUSE(1, "拒绝"),

    /**
     * 撤回
     **/
    REVOKE(2, "撤回"),

    /**
     * 转办
     **/
    ASSIGNEE(3, "转办"),

    /**
     * 退回
     **/
    ROLLBACK(4,"退回"),

    /**
     * 加签
     **/
    ADD_MULTI(5,"加签"),

    /**
     * 评论
     **/
    COMMENTS(6,"评论");

    /**
     * code值
     **/
    private Integer code;

    /**
     * 描述信息
     **/
    private String desc;

    public Integer getCode() {
        return code;
    }

    public String getDesc() {
        return desc;
    }

    HandleTypeEnums(Integer status, String desc) {
        this.code = status;
        this.desc = desc;
    }

    /**
     * @Infor: 根据值 获取枚举
     * @Author: gjy
     * @Date: 11:25 2022/10/27
     * @param value
     * @Returns: com.cic.msg.enums.business.BusKeySearchTypeEnum
     * @Throws:
     **/
    public static HandleTypeEnums of(Integer value) {
        if (value == null) {
            return null;
        }

        HandleTypeEnums[] arr = values();
        for (HandleTypeEnums f : arr) {
            if (f.code.equals(value)) {
                return f;
            }
        }

        return null;
    }


    /**
     * 获取描述信息
     **/
    public static String getDescription(Integer code) {
        for (HandleTypeEnums getEnum : HandleTypeEnums.values()) {
            if (getEnum.getCode() == code) {
                return getEnum.getDesc();
            }
        }
        return null;
    }
}
